package 集合;


import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class TestMap {

    public static void main(String[] args) {
        //第一泛型，代表key类型
        //第二泛型，代表value类型
        Map<String, Double> map=new HashMap<>();//创建map集合

        //添加？
        map.put("三体",500.55);
        map.put("哈利波特",400.66);
        map.put("三体",666.55);//key相同，value替换
        map.put("三国",666.55);
        map.put("三闪",777.55);
        System.out.println(map.size());// 4
        System.out.println(map.isEmpty());// false
        //删除
        map.remove("哈利波特");//
        //修改
        map.replace("三体",8888.88);// 等同于 map.put("三体",8888.88);
        System.out.println(map.get("三体"));//8888.88
        //遍历
        //方式一：keySet()  获取key集合，通过key取value
        Set<String> keys=map.keySet();
        for (String key:keys){
            System.out.println(key+"-->"+map.get(key));
        }
        //方式二：valueSet()  获取value集合
        Collection<Double> values=map.values();
        for (Double value:values){
            System.out.println(value);
        }
        //方式三：把一组key+value放到一个对象里，把对象放到set
        Set<Map.Entry<String, Double>> entries=map.entrySet();
        for (Map.Entry<String, Double> entry:entries) {
            System.out.println(entry.getKey()+"======>"+entry.getValue());
        }
    }
}
